<?php
Class Date
{
	var $lang;
	var $time;
	var $date;
	var $now;
	var $dateFormat;
	
	function __construct($time = false,$lang = "th")
	{
		if($time == false){
			$time = time();
		}
		$this->now = time();
		$this->time = $time;
		$this->lang = $lang;
		$this->setLang('th');
	}
	
	function setTime($time)
	{
		$this->time = $time;
	}
	
	function setLang($lang)
	{
		if($lang == 'th'){
			$this->dateFormat = array(
				'sec' => 'วินาที',
				'min' => 'นาที',
				'hours' => 'ชั่วโมง',
				'secago' => 'วินาทีที่แล้ว',
				'minago' => 'นาทีที่แล้ว',
				'hoursago' => 'ชั่วโมงที่แล้ว',
				'secShot' => 'ว.',
				'minShot' => 'น.',
				'hoursShot' => 'ชม.',
				'yesterday' => 'เมื่อวาน',
				'dayago' => 'วันก่อน',
				'tomorrow' => 'พรุ่งนี้',
				'day' => array(
					1 => 'อาทิตย์',
					2 => 'จันทร์',
					3 => 'อังคาร',
					4 => 'พุธ',
					5 => 'พฤหัส',
					6 => 'ศุกร์',
					7 => 'เสาร์'
				),
				'month' => array(
					1 => 'มกราคม',
					2 => 'กุมภาพันธ์',
					3 => 'มีนาคม',
					4 => 'เมษายน',
					5 => 'พฤษภาคม',
					6 => 'มิถุนายน',
					7 => 'กรกฎาคม',
					8 => 'สิงหาคม',
					9 => 'กันยายน',
					10 => 'ตุลาคม',
					11 => 'พฤจิกายน',
					12 => 'ธันวาคม'
				),
				'year' => 543
			);
		}
	}
	
	function getTimeShotAgo()
	{
		$dfr = (int)($this->now - $this->time);
		if($dfr < 60) {
			$text = (int)($dfr).' '.$this->dateFormat['secago'];
		}
		else if($dfr < 3600) {
			$text = (int)($dfr/60).' '.$this->dateFormat['minago'];
		}
		else if($dfr < 86400) {
			$text = (int)($dfr/3600).' '.$this->dateFormat['hoursago'];
		}
		else if($dfr >= 86400 && $dfr < 172800) {
			$text = $this->dateFormat['yesterday'];
		}
		else if($dfr >= 86400 && $dfr < 604800) {
			$text = (int)($dfr/86400).' '.$this->dateFormat['dayago'];
		}
		else {
			$strDate = date('Y-n-d',$this->time);
			$buff = explode('-',$strDate);
			$text = $buff[2].' '.$this->dateFormat['month'][$buff[1]].' '.($buff[0] + $this->dateFormat['year']);
		}
		return $text;
	}
	
	function getTimeLongAgo()
	{
		$strDate = date('Y-n-d',$this->time);
		$strTime = date('H:i',$this->time);
		$buff = explode('-',$strDate);
		$text = $buff[2].' '.$this->dateFormat['month'][$buff[1]].' '.($buff[0] + $this->dateFormat['year']).' เวลา '.$strTime.' '.$this->dateFormat['minShot'];
		return $text;
	}
}
